<template>
  <div class="page_root" :key="queryUpdateFlag" data-page-name="平台及市场项目删除任务审批详情页" data-page-identification="t_0qmx2r0fpk">
    <a-spin :spinning="pageLoading.loading" :tip="pageLoading.tip">
      <!-- begin vid_a66h2jgxek 容器_ak0v3kpvfq -->
      <al-box class="vid_a66h2jgxek">
        <!-- begin vid_qda7xszz78 容器_pa5tx52lro -->
        <al-box class="vid_qda7xszz78">
          <!-- begin vid_sfilmvv65x 审批详情 -->
          <span class="vid_sfilmvv65x"> 审批详情 </span>
          <!-- end vid_sfilmvv65x 审批详情 -->
        </al-box>
        <!-- end vid_qda7xszz78 容器_pa5tx52lro -->
        <!-- begin vid_19te7vzoh6 布局容器_6p9cbh3ol6 -->
        <a-row class="vid_19te7vzoh6" :gutter="16" :slots="'6:6:6:6'">
          <a-col :span="6">
            <!-- begin vid_hte17hl8ou 审批类型： -->
            <span class="vid_hte17hl8ou"> 审批类型： </span>
            <!-- end vid_hte17hl8ou 审批类型： -->
            <!-- begin vid_8ce19j1ydg 提交附件 -->
            <span class="vid_8ce19j1ydg">
              {{ renderStringInTemplate(vid_8ce19j1ydg_props.rt_text) }}
            </span>
            <!-- end vid_8ce19j1ydg 提交附件 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_0ikfrd12jb 项目名称： -->
            <span class="vid_0ikfrd12jb"> 项目名称： </span>
            <!-- end vid_0ikfrd12jb 项目名称： -->
            <!-- begin vid_8o2vce0kw8 这里是项目名称 -->
            <span class="vid_8o2vce0kw8">
              {{ renderStringInTemplate(vid_8o2vce0kw8_props.rt_text) }}
            </span>
            <!-- end vid_8o2vce0kw8 这里是项目名称 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_a0lj69s75x 项目阶段： -->
            <span class="vid_a0lj69s75x"> 项目阶段： </span>
            <!-- end vid_a0lj69s75x 项目阶段： -->
            <!-- begin vid_io6lji4vq4 这里是项目阶段 -->
            <span class="vid_io6lji4vq4">
              {{ renderStringInTemplate(vid_io6lji4vq4_props.rt_text) }}
            </span>
            <!-- end vid_io6lji4vq4 这里是项目阶段 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_uravjf4g0h 任务名称： -->
            <span class="vid_uravjf4g0h"> 任务名称： </span>
            <!-- end vid_uravjf4g0h 任务名称： -->
            <!-- begin vid_b6yjigkl3q 这里是任务名称 -->
            <span class="vid_b6yjigkl3q">
              {{ renderStringInTemplate(vid_b6yjigkl3q_props.rt_text) }}
            </span>
            <!-- end vid_b6yjigkl3q 这里是任务名称 -->
          </a-col>
        </a-row>
        <!-- end vid_19te7vzoh6 布局容器_6p9cbh3ol6 -->
        <!-- begin vid_edq8p2j4ti 布局容器_rbsztl1y6l -->
        <a-row class="vid_edq8p2j4ti" :gutter="16" :slots="'6:6:6:6'">
          <a-col :span="6">
            <!-- begin vid_ujvy17gkkd 任务状态： -->
            <span class="vid_ujvy17gkkd"> 任务状态： </span>
            <!-- end vid_ujvy17gkkd 任务状态： -->
            <!-- begin vid_qp4k4d9gl3 未启动 -->
            <span class="vid_qp4k4d9gl3">
              {{ renderStringInTemplate(vid_qp4k4d9gl3_props.rt_text) }}
            </span>
            <!-- end vid_qp4k4d9gl3 未启动 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_2n7b2iaajn 优先级： -->
            <span class="vid_2n7b2iaajn"> 优先级： </span>
            <!-- end vid_2n7b2iaajn 优先级： -->
            <!-- begin vid_sncshfitvt 高 -->
            <span class="vid_sncshfitvt">
              {{ renderStringInTemplate(vid_sncshfitvt_props.rt_text) }}
            </span>
            <!-- end vid_sncshfitvt 高 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_it60kctr8c 任务类型： -->
            <span class="vid_it60kctr8c"> 任务类型： </span>
            <!-- end vid_it60kctr8c 任务类型： -->
            <!-- begin vid_hp95j8xrxn 文本 -->
            <span class="vid_hp95j8xrxn">
              {{ renderStringInTemplate(vid_hp95j8xrxn_props.rt_text) }}
            </span>
            <!-- end vid_hp95j8xrxn 文本 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_qa3s8t9ci2 计划工时： -->
            <span class="vid_qa3s8t9ci2"> 计划工时： </span>
            <!-- end vid_qa3s8t9ci2 计划工时： -->
            <!-- begin vid_p0hyrkkmw7 26 -->
            <span class="vid_p0hyrkkmw7">
              {{ renderStringInTemplate(vid_p0hyrkkmw7_props.rt_text) }}
            </span>
            <!-- end vid_p0hyrkkmw7 26 -->
          </a-col>
        </a-row>
        <!-- end vid_edq8p2j4ti 布局容器_rbsztl1y6l -->
        <!-- begin vid_9q38gmxrbr 布局容器_85mzfqoebq -->
        <a-row class="vid_9q38gmxrbr" :gutter="16" :slots="'6:6:6:6'">
          <a-col :span="6">
            <!-- begin vid_i2z4ykm126 实际工时： -->
            <span class="vid_i2z4ykm126"> 实际工时： </span>
            <!-- end vid_i2z4ykm126 实际工时： -->
            <!-- begin vid_urjvtoj54u 28 -->
            <span class="vid_urjvtoj54u">
              {{ renderStringInTemplate(vid_urjvtoj54u_props.rt_text) }}
            </span>
            <!-- end vid_urjvtoj54u 28 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_lbqj95daj9 工时投入状态： -->
            <span class="vid_lbqj95daj9"> 工时投入状态： </span>
            <!-- end vid_lbqj95daj9 工时投入状态： -->
            <!-- begin vid_sv3wlynl7n 超出 -->
            <span class="vid_sv3wlynl7n">
              {{ renderStringInTemplate(vid_sv3wlynl7n_props.rt_text) }}
            </span>
            <!-- end vid_sv3wlynl7n 超出 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_zmqahy13jj 任务负责人： -->
            <span class="vid_zmqahy13jj"> 任务负责人： </span>
            <!-- end vid_zmqahy13jj 任务负责人： -->
            <!-- begin vid_pazokhx20e 张珊珊 -->
            <span class="vid_pazokhx20e">
              {{ renderStringInTemplate(vid_pazokhx20e_props.rt_text) }}
            </span>
            <!-- end vid_pazokhx20e 张珊珊 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_y07ebrf7pl 审核员： -->
            <span class="vid_y07ebrf7pl"> 审核员： </span>
            <!-- end vid_y07ebrf7pl 审核员： -->
            <!-- begin vid_whsekrxwsy 张珊珊 -->
            <span class="vid_whsekrxwsy">
              {{ renderStringInTemplate(vid_whsekrxwsy_props.rt_text) }}
            </span>
            <!-- end vid_whsekrxwsy 张珊珊 -->
          </a-col>
        </a-row>
        <!-- end vid_9q38gmxrbr 布局容器_85mzfqoebq -->
        <!-- begin vid_3px7qbodza 布局容器_2hfdgouup2 -->
        <a-row class="vid_3px7qbodza" :gutter="16" :slots="'6:6:6:6'">
          <a-col :span="6">
            <!-- begin vid_vk8lkupl3t 任务执行人： -->
            <span class="vid_vk8lkupl3t"> 任务执行人： </span>
            <!-- end vid_vk8lkupl3t 任务执行人： -->
            <!-- begin vid_vonhq9nbvm 好多人 -->
            <span class="vid_vonhq9nbvm">
              {{ renderStringInTemplate(vid_vonhq9nbvm_props.rt_text) }}
            </span>
            <!-- end vid_vonhq9nbvm 好多人 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_1h7gtuu3xd 计划开始时间： -->
            <span class="vid_1h7gtuu3xd"> 计划开始时间： </span>
            <!-- end vid_1h7gtuu3xd 计划开始时间： -->
            <!-- begin vid_gz4ovawl99 01-12 -->
            <span class="vid_gz4ovawl99">
              {{ renderStringInTemplate(vid_gz4ovawl99_props.rt_text) }}
            </span>
            <!-- end vid_gz4ovawl99 01-12 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_tdn148t61j 实际开始时间： -->
            <span class="vid_tdn148t61j"> 实际开始时间： </span>
            <!-- end vid_tdn148t61j 实际开始时间： -->
            <!-- begin vid_ss7wuj4d4s 01-13 -->
            <span class="vid_ss7wuj4d4s">
              {{ renderStringInTemplate(vid_ss7wuj4d4s_props.rt_text) }}
            </span>
            <!-- end vid_ss7wuj4d4s 01-13 -->
          </a-col>
          <a-col :span="6">
            <!-- begin vid_f6hbg2in5m 计划结束时间： -->
            <span class="vid_f6hbg2in5m"> 计划结束时间： </span>
            <!-- end vid_f6hbg2in5m 计划结束时间： -->
            <!-- begin vid_4yzl296aw0 简单文本_e4719q3gr8 -->
            <span class="vid_4yzl296aw0">
              {{ renderStringInTemplate(vid_4yzl296aw0_props.rt_text) }}
            </span>
            <!-- end vid_4yzl296aw0 简单文本_e4719q3gr8 -->
          </a-col>
        </a-row>
        <!-- end vid_3px7qbodza 布局容器_2hfdgouup2 -->
        <!-- begin vid_6x3a370vqt 布局容器_262ytpmv9c -->
        <a-row class="vid_6x3a370vqt" :gutter="16" :slots="'6:18'">
          <a-col :span="6">
            <!-- begin vid_afol0jwr30 提交人： -->
            <span class="vid_afol0jwr30"> 提交人： </span>
            <!-- end vid_afol0jwr30 提交人： -->
            <!-- begin vid_762z22cbgo 简单文本_mhrp9jjg2f -->
            <span class="vid_762z22cbgo">
              {{ renderStringInTemplate(vid_762z22cbgo_props.rt_text) }}
            </span>
            <!-- end vid_762z22cbgo 简单文本_mhrp9jjg2f -->
          </a-col>
          <a-col :span="18">
            <!-- begin vid_v1hooyhdav 提交时间： -->
            <span class="vid_v1hooyhdav"> 提交时间： </span>
            <!-- end vid_v1hooyhdav 提交时间： -->
            <!-- begin vid_bptj2d75cf 简单文本_q1jaswxr7x -->
            <span class="vid_bptj2d75cf">
              {{ renderStringInTemplate(vid_bptj2d75cf_props.rt_text) }}
            </span>
            <!-- end vid_bptj2d75cf 简单文本_q1jaswxr7x -->
          </a-col>
        </a-row>
        <!-- end vid_6x3a370vqt 布局容器_262ytpmv9c -->
        <!-- begin vid_49npj38pst 布局容器_5dj6vyuqpz -->
        <a-row class="vid_49npj38pst" :gutter="16" :slots="'24'">
          <a-col :span="24">
            <!-- begin vid_5pu9qyvdsj 验收标准： -->
            <span class="vid_5pu9qyvdsj"> 验收标准： </span>
            <!-- end vid_5pu9qyvdsj 验收标准： -->
            <!-- begin vid_pug8mxgjf4 容器_mztfwo57ja -->
            <al-box class="vid_pug8mxgjf4">
              <!-- begin vid_jv7cgcwchk 简单文本_lmlq9g8q7o -->
              <span class="vid_jv7cgcwchk">
                {{ renderStringInTemplate(vid_jv7cgcwchk_props.rt_text) }}
              </span>
              <!-- end vid_jv7cgcwchk 简单文本_lmlq9g8q7o -->
            </al-box>
            <!-- end vid_pug8mxgjf4 容器_mztfwo57ja -->
          </a-col>
        </a-row>
        <!-- end vid_49npj38pst 布局容器_5dj6vyuqpz -->
        <!-- begin vid_d7rz7fdkxt 布局容器_23m26uzdc9 -->
        <a-row class="vid_d7rz7fdkxt" :gutter="16" :slots="'24'">
          <a-col :span="24">
            <!-- begin vid_jndaqzcwr4 备注： -->
            <span class="vid_jndaqzcwr4"> 备注： </span>
            <!-- end vid_jndaqzcwr4 备注： -->
            <!-- begin vid_mtkk1c408y 容器_uunldq590n -->
            <al-box class="vid_mtkk1c408y">
              <!-- begin vid_qi1mlh4c5x 简单文本_7z66pifebz -->
              <span class="vid_qi1mlh4c5x">
                {{ renderStringInTemplate(vid_qi1mlh4c5x_props.rt_text) }}
              </span>
              <!-- end vid_qi1mlh4c5x 简单文本_7z66pifebz -->
            </al-box>
            <!-- end vid_mtkk1c408y 容器_uunldq590n -->
          </a-col>
        </a-row>
        <!-- end vid_d7rz7fdkxt 布局容器_23m26uzdc9 -->
      </al-box>
      <!-- end vid_a66h2jgxek 容器_ak0v3kpvfq -->
    </a-spin>
  </div>
</template>
<script setup lang="tsx">
  import {
      h, ref, reactive, toRaw, markRaw, watch, computed,
      onBeforeMount, onMounted, onBeforeUnmount, onUnmounted, onActivated, onDeactivated
    } from "vue";
    import { useRoute, useRouter } from 'vue-router';
    const router = useRouter();
    const route = useRoute();
    import { get, post, put, del, request, requestWithHeaders } from '@/utils/http/Axios';
    import { cloneDeep, localGet, merge, getDifferenceArray, traversalTreeStructure, checkCaseCondition, renderStringInTemplate, handleBreadcrumbJump, throttle, permission, getComponentParamsValue } from '@/utils/index';
    import { isNullOrEmpty, isEmptyArr, isNullOrUnDef, isContained, isArray, isEmpty, isObject } from '@/utils/is';
    import dayjs from 'dayjs';
    import { getPagePcChartsDataSourceConvert } from '@/utils/chart';
    import { message, notification, Modal } from 'ant-design-vue'
    import { propertyFormatByNumber, propertyFormatByPercentage, propertyFormatByDate, parseSubFromDataList } from '@/utils/format';
    import colorTheme from '@/design/custom-theme.json';
    
    import UserTableRecords from '@/model/UserTableRecords';
    import { getAppBaseUrl } from '@/utils/index';
    import { sendToken } from "@/hooks/useIframeToken";
    import { useSystemStore } from "@/store/modules/system";
    const systemStore = useSystemStore();
    



      // 获取传入的流程ID和组件参数
      const props = defineProps({
            'processInstanceId': {
            type: [String,Number,Boolean],
            default: undefined,
        },
      })
      const immediateWatch = (source, callback) => {
        watch(source, callback, {deep: true,immediate: true })
      }



  /* -------------------------- 属性定义 -------------------------- */

      const setTimeOutList = [];
      const pageLoading = reactive({
        loading: false,
        tip: undefined
      });
      const authInfo = localGet('app-user-store');

    const vid_8ce19j1ydg_props = reactive({
          rt_text: undefined,
  })

    const vid_8o2vce0kw8_props = reactive({
          rt_text: undefined,
  })

    const vid_io6lji4vq4_props = reactive({
          rt_text: undefined,
  })

    const vid_b6yjigkl3q_props = reactive({
          rt_text: undefined,
  })

    const vid_qp4k4d9gl3_props = reactive({
          rt_text: undefined,
  })

    const vid_sncshfitvt_props = reactive({
          rt_text: undefined,
  })

    const vid_hp95j8xrxn_props = reactive({
          rt_text: undefined,
  })

    const vid_p0hyrkkmw7_props = reactive({
          rt_text: undefined,
  })

    const vid_urjvtoj54u_props = reactive({
          rt_text: undefined,
  })

    const vid_sv3wlynl7n_props = reactive({
          rt_text: undefined,
  })

    const vid_pazokhx20e_props = reactive({
          rt_text: undefined,
  })

    const vid_whsekrxwsy_props = reactive({
          rt_text: undefined,
  })

    const vid_vonhq9nbvm_props = reactive({
          rt_text: undefined,
  })

    const vid_gz4ovawl99_props = reactive({
          rt_text: undefined,
  })

    const vid_ss7wuj4d4s_props = reactive({
          rt_text: undefined,
  })

    const vid_4yzl296aw0_props = reactive({
          rt_text: undefined,
  })

    const vid_762z22cbgo_props = reactive({
          rt_text: undefined,
  })

    const vid_bptj2d75cf_props = reactive({
          rt_text: undefined,
  })

    const vid_jv7cgcwchk_props = reactive({
          rt_text: undefined,
  })

    const vid_qi1mlh4c5x_props = reactive({
          rt_text: undefined,
  })



      // 处理校验
      const setSubFormName =(parentInfo, name)=>{
        return [parentInfo.parents, parentInfo.cycleIndex, name];
      }


  /* ========================== 属性定义 ========================== */


  /* -------------------------- 元素数据引用 -------------------------- */


  /* ========================== 元素数据引用 ========================== */


  /* -------------------------- 页面数据 -------------------------- */

    // 页面数据 审批详情
    const dataConnector_conn_m45gnsk0hr_response = ref();
    const dataConnector_conn_m45gnsk0hr = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/changeRecord/{instanceId}';
          // 替换url中的变量
          url = url.replace('{instanceId}', String(pageParameter_state.processInstanceId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_m45gnsk0hr_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 完成任务审批详情
    const dataConnector_conn_rtucp29zln_response = ref();
    const dataConnector_conn_rtucp29zln = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/changeRecord/task/{instanceId}';
          // 替换url中的变量
          url = url.replace('{instanceId}', String(pageParameter_state.processInstanceId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_rtucp29zln_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 任务审批详情中的任务风险分页
    const dataConnector_conn_trnrlsqdxj_response = ref();
    const dataConnector_conn_trnrlsqdxj = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            instanceId: pageParameter_state.processInstanceId,
          pageNo: null,
          pageSize: null
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/changeRecord/taskRisk/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_trnrlsqdxj_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询标准信息完成标准
    const dataConnector_conn_80alhkvp89_response = ref();
    const dataConnector_conn_80alhkvp89 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            type: '完成标准'
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/changeRecord/{instanceId}/standard_info';
          // 替换url中的变量
          url = url.replace('{instanceId}', String(pageParameter_state.processInstanceId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_80alhkvp89_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询标准信息审批标准及注意事项
    const dataConnector_conn_35sdq6sf6y_response = ref();
    const dataConnector_conn_35sdq6sf6y = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            type: null
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/changeRecord/{instanceId}/standard_info';
          // 替换url中的变量
          url = url.replace('{instanceId}', String(pageParameter_state.processInstanceId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_35sdq6sf6y_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询标准信息(sop)
    const dataConnector_conn_xaeuhbh32o_response = ref();
    const dataConnector_conn_xaeuhbh32o = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            type: 'sop'
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/changeRecord/{instanceId}/standard_info';
          // 替换url中的变量
          url = url.replace('{instanceId}', String(pageParameter_state.processInstanceId))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_xaeuhbh32o_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


  /* ========================== 页面数据 ========================== */



  /* -------------------------- 响应 -------------------------- */

  /* ========================== 响应 ========================== */


  /* -------------------------- 函数 -------------------------- */

  /* ========================== 函数 ========================== */


  /* -------------------------- 页面参数 -------------------------- */

    const pageParameter_state = reactive({
        'processInstanceId': props.processInstanceId ?? route.query.processInstanceId,
    })

  /* ========================== 页面参数 ========================== */


  /* -------------------------- 组件事件处理方法 -------------------------- */

    // ---------------------------- 组件数据同步 ----------------------------
    // 处理 提交附件 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.approvalType,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.approvalType

      vid_8ce19j1ydg_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 这里是项目名称 的 rt_text 属性关联
  watch(() => dataConnector_conn_m45gnsk0hr_response?.value?.data?.projectName,
    () => {
      let dataList = dataConnector_conn_m45gnsk0hr_response?.value?.data?.projectName

      vid_8o2vce0kw8_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 这里是项目阶段 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.milepostName,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.milepostName

      vid_io6lji4vq4_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 这里是任务名称 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskName,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskName

      vid_b6yjigkl3q_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 未启动 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskStatus,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskStatus

      vid_qp4k4d9gl3_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 高 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.priorityStr,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.priorityStr

      vid_sncshfitvt_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 文本 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskType,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskType

      vid_hp95j8xrxn_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 26 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.workingHours,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.workingHours

      vid_p0hyrkkmw7_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 28 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.actualWorkHours,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.actualWorkHours

      vid_urjvtoj54u_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 超出 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.stateInput,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.stateInput

      vid_sv3wlynl7n_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 张珊珊 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskOwner,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskOwner

      vid_pazokhx20e_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 张珊珊 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.assessorName,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.assessorName

      vid_whsekrxwsy_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 好多人 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskParticipantStr,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskParticipantStr

      vid_vonhq9nbvm_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 01-12 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.startTime,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.startTime

      vid_gz4ovawl99_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 01-13 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.actualStarTime,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.actualStarTime

      vid_ss7wuj4d4s_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_e4719q3gr8 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.endTime,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.endTime

      vid_4yzl296aw0_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_mhrp9jjg2f 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.submitter,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.submitter

      vid_762z22cbgo_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_q1jaswxr7x 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.submitterTime,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.submitterTime

      vid_bptj2d75cf_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_lmlq9g8q7o 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.acceptanceCriteria,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.acceptanceCriteria

      vid_jv7cgcwchk_props.rt_text = dataList;
    },
    {deep: true})
  // 处理 简单文本_7z66pifebz 的 rt_text 属性关联
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.description,
    () => {
      let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.description

      vid_qi1mlh4c5x_props.rt_text = dataList;
    },
    {deep: true})
    // ============================ 组件数据同步 ============================


  /* ========================== 组件事件处理方法 ========================== */


  /* -------------------------- 生命周期 -------------------------- */
  // 用于参数变更后重新执行自定义指令
      const queryUpdateFlag = ref(0);
      onMounted(() => { ;dataConnector_conn_m45gnsk0hr()
  dataConnector_conn_rtucp29zln()
  dataConnector_conn_trnrlsqdxj()
  dataConnector_conn_80alhkvp89()
  dataConnector_conn_35sdq6sf6y()
  dataConnector_conn_xaeuhbh32o()

    });

    onUnmounted(() => {
      // 销毁定时器
      setTimeOutList.forEach(({ repeat, timer }) => {
        repeat ?  clearInterval(timer): clearTimeout(timer);
      });
    });

  /* ========================== 生命周期 ========================== */


  /* -------------------------- 数据关联处理 -------------------------- */





  /* -------------------------- 表单数据同步 -------------------------- */
  /* ========================== 表单数据同步 ========================== */

  /* ========================== 数据关联处理 ========================== */


  /* -------------------------- 不同组件自定义的处理逻辑 -------------------------- */

  /* ========================== 不同组件自定义的处理逻辑 ========================== */


  // ================================定制化逻辑========================================
  watch(() => dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskStatus,
   () => {
     let dataList = dataConnector_conn_rtucp29zln_response?.value?.data?.ppmTaskDto?.taskStatus
  //
  let text = document.querySelector('.vid_qp4k4d9gl3')
  if(dataList==='完成'){
      text.style.color = '#30BF78'
  }else if(dataList==='延期'){
      text.style.color = '#E02020'
  }else if(dataList==='进行中'){
      text.style.color = '#3875FF'
  }else if(dataList==='延期完成'){
      text.style.color = '#FF9846'
  }else if(dataList==='未启动'){
      text.style.color = '#8C8C8C'
  }
  //
   },
   {deep: true})
</script>
<style lang="less" scoped>
  .page_root {
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color:#F5F5F5;
  }
  .page_root :deep(.@{ant-prefix}-spin-nested-loading),
  .page_root :deep(.@{ant-prefix}-spin-container)
   {
      height: 100%;
  }
  .page_root :deep(.@{ant-prefix}-spin-container .@{ant-prefix}-table-wrapper)
   {
      display: flex;
      flex-flow: column nowrap;
      justify-content: flex-start;
  }
  .page_root :deep(.@{ant-prefix}-table)
   {
    flex: auto;
    overflow: auto;
  }
  .table-moreBtn_down {
    overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: 100px;
  }

  .table-moreBtn_menu :deep(.table-moreBtn_menu-item):hover {
    background: #ebf1ff;
  }

  /*  表格树结构样式处理，展开按钮层级增加*/
  :deep(.@{ant-prefix}-table-row-expand-icon) {
    z-index: 1;
  }
  /*  表格树结构 由于每个表格项采用自定义组件，使用绝对定位布局，开启树结构导致显示异常，暂时使用层级定位位置 */
  :deep(.@{ant-prefix}-table-row-level-1 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 15px !important;
    width: calc(100% - 15px);
  }
  :deep(.@{ant-prefix}-table-row-level-2 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 30px !important;
    width: calc(100% - 30px);
  }
  :deep(.@{ant-prefix}-table-row-level-3 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 45px !important;
    width: calc(100% - 45px);
  }
  :deep(.@{ant-prefix}-table-row-level-4 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 60px !important;
    width: calc(100% - 60px);
  }

  /* 穿梭框改变默认样式，为根据组件样式控制左右栏宽度。 */
  :deep(.@{ant-prefix}-transfer-list)
   {
      height: 100%;
      width: 50%;
  }
  .vid_a66h2jgxek{
      width:100%;
      height:750px;
      overflow-x:hidden;
      overflow-y:auto;
      display:block;
      background-color:#FFFFFF;
      box-shadow:0px 0px 0px 0px
  }
  .vid_qda7xszz78{
      margin-bottom:16px;
      background-color:#FFFFFF
  }
  .vid_sfilmvv65x{
      height:16px;
      padding-left:8px;
      font-weight:800;
      font-size:16px;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_19te7vzoh6{
      display:flex;
      flex-direction:row;
      align-items:flex-start;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_hte17hl8ou{
      min-width:70px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_8ce19j1ydg{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_0ikfrd12jb{
      min-width:70px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_8o2vce0kw8{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_a0lj69s75x{
      min-width:70px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_io6lji4vq4{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_uravjf4g0h{
      min-width:70px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_b6yjigkl3q{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_edq8p2j4ti{
      display:flex;
      flex-direction:row;
      align-items:center;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_ujvy17gkkd{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_qp4k4d9gl3{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_2n7b2iaajn{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_sncshfitvt{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_it60kctr8c{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_hp95j8xrxn{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_qa3s8t9ci2{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_p0hyrkkmw7{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_9q38gmxrbr{
      display:flex;
      flex-direction:row;
      align-items:center;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_i2z4ykm126{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_urjvtoj54u{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_lbqj95daj9{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_sv3wlynl7n{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_zmqahy13jj{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_pazokhx20e{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_y07ebrf7pl{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_whsekrxwsy{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_3px7qbodza{
      display:flex;
      flex-direction:row;
      align-items:flex-start;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_vk8lkupl3t{
      min-width:84px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_vonhq9nbvm{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_1h7gtuu3xd{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_gz4ovawl99{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_tdn148t61j{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_ss7wuj4d4s{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_f6hbg2in5m{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_4yzl296aw0{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_6x3a370vqt{
      display:flex;
      flex-direction:row;
      align-items:center;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_afol0jwr30{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_762z22cbgo{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_v1hooyhdav{
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_bptj2d75cf{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_49npj38pst{
      display:flex;
      flex-direction:row;
      align-items:flex-start;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_5pu9qyvdsj{
      min-width:70px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_pug8mxgjf4{
      width:100%;
      display:flex;
      flex-direction:row;
      align-items:center;
      flex-wrap:undefined;
      box-shadow:0px 0px 0px 0px
  }
  .vid_jv7cgcwchk{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }
  .vid_d7rz7fdkxt{
      display:flex;
      flex-direction:row;
      align-items:flex-start;
      flex-wrap:undefined;
      margin-bottom:8px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_jndaqzcwr4{
      min-width:42px;
      font-weight:400;
      color:rgba(89, 89, 89, 1)
  }
  .vid_mtkk1c408y{
      width:100%;
      display:flex;
      flex-direction:row;
      align-items:center;
      flex-wrap:undefined;
      box-shadow:0px 0px 0px 0px
  }
  .vid_qi1mlh4c5x{
      font-weight:600;
      color:rgba(38, 38, 38, 1)
  }

  :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
   padding: 0;
  }
    /deep/.ant3-checkbox-group-item + .ant3-checkbox-group-item span{
      color:#595959 !important;
    }
    /deep/.ant3-checkbox-wrapper.ant3-checkbox-wrapper-disabled span{
      color:#595959 !important;
    }
</style>